System for interactive matrix manipulation control of streamed data and media

ABSTRACT

An interactive streaming media and application service provider system can securely stream high resolution, multiple formats of video and data. Different data sets can be included in a single stream. A rights management system controls matrix manipulation and other aspects of user control of the data, including one or more of rendering in various different 2D, 3D, or other media formats, reconstruction and modeling, zooming, frame grab, print frame, parental controls, picture in picture, preventing unauthorized copying, adapting to different data transmission formats, adapting to different resolutions and screen sizes, and actively control functionality contained in embedded data, encryption/decryption. Control can be exerted by an external entity through a user-side virtual machine. Control codes can optionally be embedded in the media, embedded in the user&#39;s device, and/or sent separately to the device.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part of U.S. patent applicationSer. No. 12/104,314 titled “Filed Access Management System” that wasfiled on Apr. 16, 2008 by Kelley Wise and claims the benefit of U.S.Provisional Application 60/912,105 that was filed on Apr. 16, 2007, thisapplication also claims the benefit of U.S. Provisional Application61/609,164, filed on Mar. 9, 2012, the contents of which are allexpressly incorporated herein by reference.

STATEMENT RE: FEDERALLY SPONSORED RESEARCH/DEVELOPMENT

Not Applicable

BACKGROUND

The field of the invention is data and media streaming.

This system in one embodiment is manifested as one or more streamingmedia servers, running our proprietary image, video, audio, matrixmanipulation controlled encoding and streaming software, a network, andsubscribers/remote users that download a proprietary remote viewer totheir computer, television, tablet or smart phone device.

This system provides controllable streamed data and interactiveentertainment media such as video in an encoded or encrypted form overthe Internet to an applet or a virtual machine operating in a buffer inthe remote users computer or wireless device either in conjunction withthe operating system of the remote computer or device or independent ofthe operating system and under the control of the external streamingserver which provides a separate Boolean control code or other type ofcontrol code to match with the authorized remote user's control codeprovided by the service provider, The provider of the streamed media ordata is able to turn on and off a set of premium services by remotecontrol such as 3D images and different levels of resolution on thescreen to name a few by streaming a separate control code to remotelycontrol the matrix manipulation control system inside the virtualmachine. (The control code sent from the streaming media provider servershakes hands with the remote viewer to confirm it is an authorizedviewer and not a video copying software system.)

The viewer maintains an active control connection to the streamingserver through the control code from the server connecting to the remoteviewer.

The control code could also be internal to the device and orpre-installed to communicate with the embedded data in the streamed codeto engage matrix manipulation as required for the control specificationscontain in the streamed data.

While it is useful for streaming media providers to provide the remoteuser manual control over the streamed images, videos, or files, usingmatrix manipulation inside a virtual machine, the present methodologiesto not address a host of problems that occur on the Internet regardingcontent piracy and other issues and features and functionality not beingprovided in prior art methods. My novel and inventive method provides amuch higher lever of control over the streamed data and media contentthan any prior art method.

In my novel method the application or media service provider use aseparate set of streamed control codes to give the provide activecontrol and active encryption over the streamed data by having a serverstream a separate Boolean control code or other type of code to a matrixmanipulation control system operating inside the remote computer eitherin a virtual machine operating inside a buffer or sandbox or browser orembedded in a chip or other device to control or manipulate the image ordata inside the device or virtual machine with matrix manipulation andor transformation to provide different levels of service, when anauthorized user has entered a corresponding control code into the matrixmanipulation control system functioning inside the chip, device or avirtual machine, running inside the remote user's computer or wirelessInternet device.

When large numbers of remote users on different remote receiving deviceswith different data requirements need different levels of videoresolution the system can provide each user the correct resolutionthrough the matrix manipulation control system to add or subtracthorizontal video lines of a video file or large image file, such as amedical diagnostic image, when a full resolution image is not needed aswith a low resolution image used as a thumbnail such as when opening afile or a low resolution image being restored to a full resolution imageby the users input when allowed, or when the service provider remotelyswitches on more resolution on demand or converting a 2D image or videoto a particular type of 3D display such as anaglyph or bi-polarized indifferent transmission formats such as Frame sequential, Frame packing,Side-by-side, and Checkerboard 3D image or video data transmissiontechniques.

These current methods of streamed 3D transmission formats are databandwidth intensive and requires considerable processing power, ournovel method will control the frame switching functions inside a matrixmanipulation control system operating in a virtual machine or device toseparate the process from the operating system if desired to maintainsecure content control and allow for greater control and manipulationcapabilities of the streamed image, audio, or video data.

A few of the different services that can be offered using our novelmethod are 3D viewing on demand, different levels of high resolution ondemand, and secure encryption services which can allow different levelsof active encryption to be added as well as the ability to constantlychange the encryption algorithms using the method of streamed controlcodes to a matrix manipulation control system. This and all otherextrinsic materials discussed herein are incorporated by reference intheir entirety. Where a definition or use of a term in an incorporatedreference is inconsistent or contrary to the definition of that termprovided herein, the definition of that term provided herein applies andthe definition of that term in the reference does not apply.

Unless the context dictates the contrary, all ranges set forth hereinshould be interpreted as being inclusive of their endpoints andopen-ended ranges should be interpreted to include only commerciallypractical values. Similarly, all lists of values should be considered asinclusive of intermediate values unless the context indicates thecontrary.

Thus, there is still a need for systems and methods that can be used tosecurely stream media to an end user.

BRIEF SUMMARY

An application service provider server streams encrypted and or encodeddata with a Boolean operating code or other type of code over theInternet. The application service provider server also streams aseparate Boolean control code or other type of control codecorresponding to the streamed data with Boolean operating code or othertype of operating code to control a matrix manipulation control systemfunctioning inside a remote device or a virtual machine operating insidethe buffer of a remote user's device, computer or wireless Internetdevice in order to provide access authorization and unlock features ondemand when the remote user enters another Boolean control code providedby the application service provider. A separate control code is providedto device manufacturers and distributers to install in remote userdevices to control codes from the streamed media or data provider tocause the remote device to adapt the matrix manipulation control systemor other system internal to the remote user's device to accept differentformats of streamed image, audio, and video data and other streameddata.

The encrypted and or encoded data and Boolean operating code is streamedthrough a matrix manipulation control system running inside an applet orvirtual machine operating inside a buffer such as a sandbox or browserin a remote user's computer or other device. The streamed Booleancontrol code controls the matrix manipulation functions of the Matrixmanipulation control system functioning inside the virtual machine tocontrol access to the streamed data and lock and control viewerfunctionality, image resolution, 3D viewing, and other features.Authorized users receive the distributed control code and enter thecontrol code into the matrix manipulation control system functioninginside the virtual machine viewer. The control code unlocks the matrixmanipulation encryption system. The remote controlled matrixmanipulation encryption system opens according to the level of accessauthorized and provides access to the authorized matrix manipulationcontrolled features available from the streamed data code. The virtualmachine viewer displays the streamed data. Streamed 3D data is switched,sequenced, modified and/or transformed as layers of frames, side by sideframes, and/or a checkerboard matrix of pixels for each video frame bymathematically switching on and off as desired, each data set and everypart of each data set individually to achieve any type of 3D displayneeded at any resolution desired by the remote user or required for theremote user's device in order to be properly displayed or monitored.

Besides the objectives and advantages of the preferred embodiment of theinventive subject matter described above, there are objectives andadvantages also some of which are:

a) To use this method to further prevent unauthorized copying of thedata, images, video, or file.

b) To use this method to provide parental controls over access tocontent.

c) To use this method to render image data

d) Render an image in 3D

e) Allow a device to remotely adapt to different 3D transmissionformats.

f) To allow a remote device to automatically adjust to different imageresolutions streamed from a provider.

g) To remotely control by matrix manipulation, access to availablecontrols on the remote Viewer.

h) To remotely set functionality levels in the remote user's device byremote control of the matrix manipulation control system.

i) To remotely control access to streamed left and right eye images andvideo content for 3D display on demand.

j) To remotely control conversion of left and right eye images and videocontent to display anaglyph 3D display.

k) To remotely control the type of 3D display that can be viewedremotely, such as selecting anaglyph or Bi-Polar 3D viewing.

l) To remotely engage controls on the remote user's device which allowthe remote user to select the type of 3D display.

m) To remotely modify streamed data to convert into another formatinside the virtual machine using matrix manipulation.

n) To remotely disable or allow playback of the streamed content bycontrolling matrix manipulation of the data inside the virtual machine.

o) To actively control functionality contained in an active digitalwater mark embedded in the data to control interactive media.

p) The method conserve processor power in the remote device whendecoding streamed stacked image data sets and compressed side by sideset of data for streamed 3D displays.

These objects described above and many others are achieved in thepreferred embodiment of the inventive subject matter and allow forfurther advantages to become apparent from a consideration of theensuing description and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other features and advantages of the various embodimentsdisclosed herein will be better understood with respect to the followingdescription and drawings, in which like numbers refer to like partsthroughout, and in which:

The drawings shown are flow charts representing two of the preferredembodiments of the inventive subject matter and show the steps to use amatrix manipulation control system inside a remote receiving computer orwireless device or other device which acts like matching puzzle sets andor a filter or matrix of doors or windows opening and closing toactively control access and functionality of streamed data, images,interactive video and other streamed applications. The matrixmanipulation control system is controlled and locked remotely by astreamed Boolean control code from the application service provider andengaged by a corresponding control code inputted from the authorizedremote user and can be further used to activate controls contained in anactive digital water mark embedded in the code.

The drawings shown are two flowcharts, which are FIG. 1, FIG. 2, andFIG. 3, FIG. 4, FIG. 5, FIG. 6, and FIG. 7, representing the presentinvention and showing the steps controlling and manipulating the datastream with an active matrix manipulation control system.

1. Application Service or Media Provider Servers

2. Application service provider server streams or encodes a file or datafor streaming with encrypted and or encoded data as a single data set ormore than one data set combined together and encoded with a matrixmanipulation filter or encryption puzzle pattern or other similar datamodifications encoded onto the data and with or without an embeddeddigital water mark embedded in the data over a network or the Internetwith a corresponding Boolean operating code or other code streamedseparately.

3. Application service provider server streams or encodes for streaming,a separate Boolean control code for the streamed data with Booleanoperating code which can be assigned to each user.

4. A separate control code can be provided to the user for the user toinput to a device to enable functionality or additional functionality orproducts and services on a device or service.

5. An applet or virtual machine or other device operating inside abuffer such as a sandbox or browser in a remote user's computer or amatrix manipulation control system embedded in another device receivesthe encrypted or encoded data or data sets with the matrix manipulationencryption and interactive function control code encoded onto the dataor data sets.

6. A matrix manipulation control system interacts with the the streamedBoolean control code or other streamed control code which controls thematrix manipulation control system functions running inside a virtualmachine or other device to control matrix manipulation of the streameddata, to add or remove functionality or control access to the streameddata, and lock and control the remote device functionality, imageresolution, Stereo 3D viewing, and other features and control embeddeddigital watermark type control functions that have been embedded in thedata itself such as image data, video, and other types of streamed data.

7. A user control code is received by the user.

8. Authorized user receives the distributed user control code.

9. User inputs the user control code into the matrix control system.

10. The user control code unlocks or activates matrix manipulationencryption or controls of the system or the digital watermark functionsembedded in the data.

11. Functionality or controls are engaged by user input of a controlcode

12. Access control system inside the matrix manipulation control systemopens or controls encoded user control functionality.

13. The matrix manipulation control system engages functions accordingto the level of access authorized and provides access to streamedcontent and the authorized matrix manipulation controlled featuresavailable from the streamed or downloaded data code.

14. The Matrix Manipulation filter decodes the data according to thecontrol code by adjusting the encoded matrix manipulation settings ofeach component of the encoded streamed data sets.

15. Active digital watermark or matrix manipulation control encoded dataor data sets

16. Virtual machine or other device displays or provides the streameddata.

17. The streamed operating Boolean code or other control code allows theuser to have manual control over standard functions of the embeddeddevice or viewer or other type of device that receive and transmitsstreamed data.

18. When authorized a remote user may control some matrix manipulationfunctions of the virtual machine viewer.

19. A device can utilize its own control code for authorization or otherpurpose.

20. For 3D media encoding the system inputs one, two, or more channelsof a video or image or other data or data sets.

21. A programmable matrix manipulation control filter encoder encodesdifferent matrix manipulation control settings onto various desiredcomponents of the data or data sets which can be assigned to operatewith the proper control code to turn on and off or to switch, adjust,filter, enlarge, offset, dim, change color, or other form ofmanipulation which can be performed using matrix manipulation to adjustthe pixels or other data to be displayed or provided for userinteraction.

22. The system allows left and right channels of video and orstereoscopic images and data or other type of 3D media or data to becontrolled and switched at a high rate of speed using matrixmanipulation switching and or manipulation.

23. The System can be used for encryption by and access authorization byassigning different types of control codes as per the needs of the ASP.

24. Stereo, 3D or multi-channel data is combined or encoded asmulti-layer data to react as desired to the corresponding control codesrequired using matrix manipulation to act as matching puzzle pieces oractivating the desired data or sub sets of data.

25. The encoded data is streamed or encoded as a file for streaming.

26. The encoded data can be streamed together or streamed separately.

27. The data or data sets is streamed or input to the remote usersmatrix manipulation control system or matrix manipulation filter in theremote users device.

28. A second streamed data set is input to the matrix manipulationcontrol system or filter.

29. A user control code is input by the user or by the users device orautomatically by the ASP if needed into the matrix manipulation controlsystem or filter.

30. The system/s uses the control codes to manipulate and or permitaccess and manipulation of the encoded data or data sets and enablesfeatures such as 3D and interactive controls of the media or data.

31. The combined data sets are decoded to produce 3D video, images,data, and or interactive media, displays, data, or combinations ofdifferent data and media functionality.

32. Encoded stereoscopic or multi-channel 3D video, images or data in amatrix manipulation adjusted matrixed and layered data set format withor without a digital watermark in a combined encoded form that allowsfor active and or interactive decoding in real time with matrixmanipulation controls and or manipulates the various encoded componentsof each portion of the data set/s.

34. The data sets are encoded to be decoded or switched by matrixmanipulation of each encoded component of the data or data sets.

35. The Internet or a network.

36. Data such as user data or interactive control codes from the user tothe ASP can engage interactive functionality and other features of thesystem such as allowing the remote user access to other data streams ande-commerce applications from the ASP.

37. The system provides a graphical user interface for the user tomanipulate, interact the data.

38. The system uses a server or other computer device to modify, adjust,manipulate and combine data sets such as one or more channels of videoor other data to encode the data and stream the data or save the encodedas a file for streaming. This device or server will produce and streamcorresponding control codes for the encoded data and perform otherservices for the ASP as described herein.

FIG. 1 represents an embodiment of the inventive subject matter showingthe steps of providing an encoded stream of data and a separate controlcode to control functions and access of the data and using an authorizedusers control code input into the system to actively communicate withthe control code streamed from the application or media serviceprovider.

FIG. 2 represents the inner workings of the matrix manipulation controlsystem and using the control codes from the user and the provider toactively control access and functionality of an active digital watermarkembedded in the streamed data.

FIG. 3 represents the same inner workings of the matrix manipulationcontrol system and using the control codes from the user and theprovider to actively control access and functionality of streamed datawithout an embedded active digital watermark using only thefunctionality of the matrix manipulation control system on regularstreamed content with no digital water mark embedded in the data.

FIG. 4 represents the control of streamed data in the matrixmanipulation system.

FIG. 5 represents the control of streamed data in the matrixmanipulation system with embedded layers or a watermark in the streameddata.

FIG. 6 represents how different sources of control codes can be used tocontrol different functions on the streamed data and an embeddedwatermark or data layers and data sets embedded in the streamed image orvideo data with the matrix manipulation control system.

FIG. 7 represents an example of matrixed image data sets showing asideways view of data set layers and an example of one embodiment of adisplay matrix facing the display looking at an example of four lines ofresolution or one line with matrixed sub sets of matrixed image datasets.

DETAILED DESCRIPTION

The inventive subject matter provides apparatus, systems and methods inwhich an interactive streaming media and application service providersystem can securely stream high resolution, multiple formats of videoand data.

In preferred embodiments, different data sets can be included in asingle stream. A rights management system can advantageously controlmatrix manipulation and other aspects of user control of the data,including one or more of rendering in various different 2D, 3D, or othermedia formats, reconstruction and modeling, zooming, frame grab, printframe, parental controls, picture in picture, preventing unauthorizedcopying, adapting to different data transmission formats, adapting todifferent resolutions and screen sizes, and actively controlfunctionality contained in embedded data, encryption/decryption. Inespecially preferred embodiments, control can be exerted by an externalentity through a user-side virtual machine. Control codes can optionallybe embedded in the media, embedded in the user's device, and/or sentseparately to the device.

Various objects, features, aspects and advantages of the inventivesubject matter will become more apparent from the following detaileddescription of preferred embodiments, along with the accompanyingdrawing figures in which like numerals represent like components.

Throughout the following discussion, numerous references will be maderegarding servers, services, interfaces, portals, platforms, or othersystems formed from computing devices. It should be appreciated that theuse of such terms is deemed to represent one or more computing deviceshaving at least one processor configured to execute softwareinstructions stored on a computer readable tangible, non-transitorymedium. For example, a server can include one or more computersoperating as a web server, database server, or other type of computerserver in a manner to fulfill described roles, responsibilities, orfunctions.

The matrix manipulation control system uses the Boolean control codestreamed from the provider's remote device to activate a set of matrixmanipulation controls inside the virtual machine which change s ortransforms the images and data being displayed by calculating matrixtransformation on each of the pixels to be display or audibly presentedin order to manipulate the data.

One of the preferred embodiments of this invention configures a matrixmanipulation function to act as a digital filter which is a variablematrix of digital doors for streamed data which is always active or canbe “off” or “in use” so that the data to be controlled, utilized,displayed or rendered or played back in the manner in which the data wasintended to be played back and is always being processed through thematrix manipulation system process. If the manipulation process were tostop the data would be corrupted or non-useable or limited in the amountof data or portions of the data that are allowed to pass through thematrix manipulation filter.

The matrix manipulation filter searches for Boolean Patterns or patternfrom other codes used that are coming in the control code both from theapplication service provider and the authorized remote user to activateor deactivate the Matrix manipulation filtering or control functions ofthe data streamed to the device or virtual machine operating in a remotecomputer or other networked computer device. The code is a form ofpuzzle that requires corresponding sections of the puzzle to be filledin by the corresponding pieces contained in the authorized remote userscontrol code.

The user control code is streamed to the control link in the matrixmanipulation control device which is active and can be changedsimultaneously between the corresponding control code from the providerand the code from the authorized user by sending the user control codeto a cell phone or other device which would send the users control codeto the device with a Wi-Fi or any other wireless standard connectionbetween the devices.

The user code provided to the user can be activated and changed remotelyso that the key or authorization code is never the same also newfunctionality can be added to the user's service provided under thecontrol of the application or media service provider. One embodiment ofthis inventive method would be to stream the control code to the remoteuser's cell phone or other radio device, or wireless internettransmitter to allow the user to communicate with other devices thathave the service providers control code to match and allow the user touse matrix manipulation controlled function on any other system that isnetworked into the service providers using my novel method and system.

Matrix manipulation control filtering in one embodiment can be appliedto recognize image patterns in a digital image pattern or sequence ofdata by running a control code activated process in the matrixmanipulation control that monitors the data stream and uses artificialintelligence to perform analytics on the date and activate otherprocesses to send the data produce by using the matrix manipulationcontrol system to monitor the data stream.

In one embodiment of the inventive subject matter the system describedcould also be used to actively tell the matrix control system to filterout data based on my method for instructing the matrix manipulationcontrol to function as an active filter.

In one embodiment of the inventive subject matter the system wouldmonitor the stream for certain determined patterns of colors and shapesand other means of artificial intelligence image recognition using thismethod.

In one embodiment of this invention data can also be changed by activelyremoving portions of an image to be displayed in real time by usingartificial intelligence to obscure faces or address and phone numbers onsigns as needed by the provider of the streamed data.

One embodiment of this invention is an invisible Digital Watermark”encoded onto the data itself such as a video or image or data which isactively removed or controlled by the matrix manipulation control systemdescribed herein. 3D data can be displayed using this method with aseries of image layers with a small space between them encoded into asingle stream to be decoded in the remote device and then sequenced orswitched on an off using matrix manipulation.

The Matrix manipulation system can act as a filter independent of thecode itself and it can be used to activate the embedded digitalwatermark function embedded in the streamed data or streamed with thedata as a separate code. This same inventive method can also in oneembodiment to control the functionality of 3D video and image streamingon demand or activating higher resolution on any device for any onestream rather than for all images displayed for the device.

One embodiment of this invention is using a pass key that is streamed tothe matrix manipulation control device and will not open until thecorresponding section of the digital pass key is combined with thedigital passkey of the authorization control code entered by theauthorized remote user to form the completed pass key or completeddigital puzzle. The matrix manipulation control system would scramblethe image or some other function if both parts of the digital pass keywere not authorized to function together. The pass key functions can bean actively modulated and digitally controlled remotely on both ends ofthe control code inputs, from the service provider through the streamedcontrol code coming in with the selected streamed data, and from thecode that is streamed to the user to input from the user's end whilecontinuously actively changing to continually fit together as theencryption or function controlling control code is streamed to the usersremote device.

The matrix manipulation control is engaged actively at all time whilethe remote viewer or other device is functioning inside the remote userscomputer or web device like an electric screen door that has to beturned off for all the data to pass through or the authorized portion ofthe data to pass through the electric matrix of doors of the matrixmanipulation control system. The input of the authorized remote userscontrol code to the system will turn off the electric matrix of doors orjust turn off the portions Control codes from the provider is streamedto the remote user or contained in the remote user's device to allowaccess to 3D video content or access to higher resolution. The samesystem can turn on and off colors in images or enlarge images, orenhance images, zoom in on selected portions of image data, cut andpaste image data, and perform various rendering functions by performinga pixel by pixel transformation using the corresponding matrixmanipulation algorithm for the desired effect.

Streamed 3D data is switched, sequenced, modified and/or transformed aslayers of frames, side by side frames, or a checkerboard matrix ofpixels for each frame by mathematically switching on and off as desiredeach data set and every part of each data set individually using matrixmanipulation inside a matrix manipulation control system operating in avirtual machine or other device to achieve any type of 3D display neededat any resolution desired by the remote user or required for the remoteuser's device in order to be properly displayed or monitored.

The matrix manipulation control system can be switched to allow fordifferent audio tracks to be played which could allow for multiplelanguages to be streamed simultaneously and the user can select whichlanguage the matrix manipulation control system will let through thematrix manipulation doors.

In normal streamed data virtual machine viewers or devices, matrixmanipulation is applied interactively by the remote user. Our inventivemethod goes much further by applying matrix manipulation full time tothe streamed encoded data decoding process that occurs inside thevirtual machine to act as a digital gate for data to get to the vieweror device data output system. This digital gate function can alsotransform the data into other outputted data.

The Matrix manipulation function is always activated just to keep theimage stable or viewable or to allow manual manipulation of the data byan authorized remote user. If the matrix manipulation turns of the imagegoes to a default mode that renders the system useless or only capableof delivering a predetermined set of functions such as only lowresolution video or no 3D function as an example of the many embodimentspossible for this invention.

Media providers or other business like appliance manufacturers couldcontrol user access and functionality of any device including remoteviewer systems and other devices not related to images or data such asremote switching functions and remote data monitoring by capturing bitsof data from the matrix manipulation system to gather data remotely inan upstream function from the remote device triggered by the matrixmanipulation system through the Boolean control code sent from theprovider. This can be done on any Internet ready devices or networkeddevices and smart appliances using my novel method.

It should be apparent to those skilled in the art that many moremodifications besides those already described are possible withoutdeparting from the inventive concepts herein. The inventive subjectmatter, therefore, is not to be restricted except in the spirit of theappended claims. Moreover, in interpreting both the specification andthe claims, all terms should be interpreted in the broadest possiblemanner consistent with the context. In particular, the terms “comprises”and “comprising” should be interpreted as referring to elements,components, or steps in a non-exclusive manner, indicating that thereferenced elements, components, or steps may be present, or utilized,or combined with other elements, components, or steps that are notexpressly referenced. Where the specification claims refers to at leastone of something selected from the group consisting of A, B, C . . . andN, the text should be interpreted as requiring only one element from thegroup, not A plus N, or B plus N, etc.

The above description is given by way of example, and not limitation.Given the above disclosure, one skilled in the art could devisevariations that are within the scope and spirit of the inventiondisclosed herein. Further, the various features of the embodimentsdisclosed herein can be used alone, or in varying combinations with eachother and are not intended to be limited to the specific combinationdescribed herein. Thus, the scope of the claims is not to be limited bythe illustrated embodiments.

What is claimed is:
 1. A method for providing data, video, or imagemedia to a recipient while preventing unauthorized viewing or copying ofthe data, video, or image media, comprising: encoding or encrypting thedata, video, or image media into a first data set; accessing a receivingcomputer selected from a group consisting of a computing device, awireless device, a smart phone, a tablet phone, a tablet computer, and acomputer embedded appliance, wherein the receiving computer runs aremote virtual machine with a matrix manipulation function, the remotevirtual machine under control of an external device independent of anoperating system of the receiving computer; streaming the first data setto the remote virtual machine of the receiving computer; streaming aBoolean control code to the remote virtual machine of the receivingcomputer separate from the first data set, the Boolean control codereadable by the remote virtual machine and indicating if a recipientcontrol code is required to access the data, video, or image media inthe streamed first data set; using the Boolean control code to remotelycontrol the streamed first data set by remotely controlling the matrixmanipulation function in the remote virtual machine of the receivingcomputer to manipulate the streamed first data set and to control thedisplay or access of the data, video, or image media in the streamedfirst data set; enabling receipt of the recipient control code enteredby the recipient into the matrix manipulation function within the remotevirtual machine of the receiving computer; and enabling anauthentication process between the recipient control code and thestreamed Boolean control code in the matrix manipulation function toenable the recipient to access the data, video, or image media in thestreamed first data set.
 2. The method of claim 1 wherein theauthentication process provides the recipient access to availablecontrols of a media player operating within the remote virtual machineof the receiving computer.
 3. The method of claim 1 wherein therecipient control code is input into the receiving computer by awireless data transmission connection.
 4. The method of claim 1, whereinthe recipient control code code is a file or set of code instructionsinstalled on the receiving computer from a storage device selected froma group consisting of a data key, a SIM card, a smart card, a portableelectronic device, and an integrated circuit chip.
 5. The method ofclaim 1 wherein the matrix manipulation function increases or decreasesthe display resolution of the video or image media in the streamed firstdata set by cutting out or restoring lines of resolution from a highresolution video or image media.
 6. The method of claim 1 wherein thematrix manipulation function converts left and right eye images todisplay anaglyph 3D.
 7. The method of claim 1 wherein the Booleancontrol code remotely controls access to streamed left and right eyeimages for 3D movies on demand.
 8. The method of claim 1 wherein theBoolean control code remotely controls a 3D display by selectinganaglyph or Bi-Polar 3D viewing.
 9. The method of claim 1 wherein theBoolean control code is used for activating controls to allow therecipient to select the type of 3D.
 10. The method of claim 1 whereinthe matrix manipulation function is used to perform rendering and toremotely modify a format of the streamed first data set to convert thedata inside a buffer within the remote virtual machine of the receivingcomputer.
 11. The method of claim 1 wherein the Boolean control code isused to remotely disable or allow playback of the data, video, or imagemedia in the streamed first data set by controlling the matrixmanipulation function within the remote virtual machine of the receivingcomputer.
 12. The method of claim 1 wherein matrix manipulation functionis used to further prevent unauthorized copying of the data, video, orimage media in the streamed first data set.
 13. The method of claim 12wherein the matrix manipulation function is remotely controlled by thestreamed Boolean control code to further prevent unauthorized copying ofthe data, video, or image media in the streamed first data set.
 14. Themethod of claim 1 wherein the matrix manipulation function within theremote virtual machine of the receiving computer operates independentlyof the operating system of the receiving computer and is used forconversion of left and right eye images to display anaglyph 3D.
 15. Themethod of claim 1 wherein the matrix manipulation control functioncontrols an embedded circuit in the receiving computer.
 16. The methodof claim 1 wherein the streamed Boolean control code controls adaptationfunctions for a second receiving computer.
 17. The method of claim 1wherein an external device is controlled by the Boolean control codeoriginating from a server.
 18. The method of claim 1 wherein the matrixmanipulation function is used to adapt playback to the operating system.19. The method of claim 1 wherein the Boolean control code remotelyadapts streamed playback to different wireless devices.
 20. The methodof claim 5 wherein matrix manipulation function adjusts the level ofresolution of the video or image media in the streamed first data set byadding or subtracting lines or pixels from the image or videohorizontally and vertically to control the resulting display image orvideo.
 21. The method of claim 1 wherein both the Boolean control codeand the recipient control code are Boolean.
 22. The method of claim 1wherein the receiving computer is connected to the internet and matrixmanipulation function removes or modifies a digital watermark embeddedonto the first data set.
 23. The method of claim 1 wherein the streamedfirst data set includes a digital water mark that blocks access to thedata, video, or image media in the first data set, and the virtualmachine of the receiving computer uses the recipient control code toremove the digital water mark.
 24. The method of claim 23 wherein thedigital water mark is removed by the matrix manipulation function of thevirtual machine of the receiving computer.
 25. The method of claim 24wherein the matrix manipulation function uses formulas or equationscontained in a microchip to remove the digital water mark from the firstdata set.
 26. The method of claim 1 wherein the matrix manipulationfunction is used to remove or modify a digital watermark that isembedded in the first data set.
 27. The method of claim 26 wherein thematrix manipulation function removes or modifies the digital watermarkin the virtual machine of the receiving computer.
 28. The method ofclaim 26 wherein the matrix manipulation function is contained in anintegrated circuit chip.
 29. The method of claim 26 wherein the matrixmanipulation function is an applet.
 30. The method of claim 26 whereinthe digital watermark opens, closes, or switches the pixels of the videoor image media in the first data set.
 31. The method of claim 26 whereinthe digital watermark opens, closes, or switches a matrix of blockingpixels that open or close on the data, video, or image media displayedor provided by the streamed first data set.
 32. The method of claim 26wherein the digital watermark limits the image resolution of the videoor image media in the first data set that will be provided.
 33. Themethod of claim 1 wherein the matrix manipulation function superimposesvideo or image media from a second data set onto the video or imagemedia in the first data set.
 34. The method of claim 1 wherein thematrix manipulation function adds or subtracts video lines or pixelsfrom video in the first data set.
 35. The method of claim 1 wherein thematrix manipulation function is used to oscillate one or more streamedstereoscopic layers in the streamed first data set resulting in a remote3D display of the video or image media in the first data set.
 36. Themethod of claim 35 wherein the streamed stereoscopic layers in thestreamed first data set are controlled or transformed by the matrixmanipulation function in the virtual machine to produce the 3D display.37. The method of claim 35 wherein the streamed stereoscopic layers arecontrolled or transformed by switching on or off corresponding portionsof the streamed first data set.
 38. The method of claim 35 wherein thestereoscopic layers are used for anaglyph 3D.
 39. The method of claim 35wherein the stereoscopic layers are oppositely polarized.
 40. The methodof claim 35 wherein the stereoscopic layers are translucent and a lowerlayer of the video or image media in the streamed first data set isvisible through the stereoscopic layers above the lower layer.
 41. Themethod of claim 1 wherein the authentication process does not use therecipient control code to enable access to the data, video, or imagemedia in the streamed first data set when the Boolean control code has anegative state.
 42. The method of claim 1 wherein the first data set isstreamed to the virtual machine via a first communication channel, theBoolean control code is streamed to the virtual machine through a secondcommunication channel, and the second communication channel is distinctfrom the first communication channel.
 43. The method of claim 1 whereinthe matrix manipulation function includes a matrix manipulationcontroller that receives monitoring data from a matrix manipulationcontrol filter.
 44. The method of claim 1 further comprising the stepof: streaming a second data set to the remote virtual machine portion ofthe receiving computer separately from the first data set; wherein thefirst data set provides a left eye channel for a 3D display, and thesecond data set provides a right eye channel for the 3D display.
 45. Themethod of claim 44 wherein the matrix manipulation function decodes thefirst data set to provide the left eye channel.